PS/2 (порт)

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
< PS
Разъёмы PS/2 для клавиатуры (сиреневый, сверху) и мыши (зелёный, снизу)
Переходники с USB на PS/2
Переходник для подключения мыши и клавиатуры с разъёмами PS/2 к порту USB.

PS/2 — компьютерный порт, применяемый для подключения клавиатуры и мыши, использующий 6-контактный разъём mini-DIN.

Порт PS/2 впервые появился в 1987 году на компьютерах IBM PS/2 (до этого для подключения клавиатуры использовался IBM AT в виде DIN-5, мыши — COM-порт, однако мыши с разъёмом PS/2 получили популярность лишь в начале 2000-х годов) и впоследствии получил признание других производителей и широкое распространение в IBM PC-совместимых персональных компьютерах и серверах. Скорость передачи данных — от 80 до 300 Кб/с и зависит от производительности подключённого устройства и программного драйвера.

Из шести контактов в разъёме используется четыре: тактовые импульсы, данные, питание, общий. Сохранена электрическая совместимость с клавиатурным интерфейсом IBM AT. При этом для клавиатуры используемые контакты шины данных и частоты могут отличаться от контактов для подключения мыши. Это позволяет использовать оба устройства сразу, но через разветвитель.

Некоторые материнские платы могут правильно работать при «неправильном» подключении мыши и клавиатуры (то есть при подключении клавиатуры в разъём, предназначенный для мыши, и, наоборот, мыши в разъём для клавиатуры) — это обусловлено тем, что каждый разъём является универсальным. Большинство же материнских плат при неправильном подключении (или при отключении во время работы) потребуют от пользователя «правильного» подключения устройств и иногда перезагрузки.

Протокол обмена

  • Pin 4 — Питание, +5 В. Используется для подачи питания на подключаемое устройство.
  • Pin 3 — Земля/Корпус. Общий вывод для питания.
  • Pin 5 — CLK — синхронизация (Clock). Включается при передаче данных мышью.
  • Pin 1 — Data, передаваемые данные.

Изначально PS/2 реализовывался со стороны компьютера микросхемой контроллера 8048, затем был заменен на микросхему микроконтроллера 8042[1], затем его функции перешли в Super I/O или LPC-чип, либо в южный мост чипсета[2][3]. Перед подачей питания на устройство контроллер порта на материнской плате «слушает» CLK. При передаче от устройства (PS/2-клавиатуры или PS/2-мыши) к компьютеру используется следующий протокол. Устройство не начинает передачу, если Clock не находился в «1» по крайней мере 50 микросекунд. Устройство передаёт последовательно:

  1. старт-бит — всегда ноль;
  2. 8 бит данных;
  3. бит чётности;
  4. стоп-бит — всегда единица.

Устройство устанавливает/меняет сигнал Data, когда Clock находится в логической единице. Контроллер на материнской плате читает данные, когда Clock находится в логическом нуле.

При передаче в обратную сторону команд от контроллера на материнской плате компьютера к клавиатуре или мыши протокол отличается от описанного выше.

Последовательность передаваемых бит здесь сложнее:

  1. контроллер опускает сигнал Clock в ноль на время примерно 100 микросекунд;
  2. контроллер опускает сигнал Data в ноль, формируя старт-бит;
  3. контроллер отпускает сигнал Clock в логическую единицу, клавиатура фиксирует старт-бит;
  4. далее клавиатура генерирует сигнал Clock, а контроллер подает передаваемые биты;
  5. после того, как контролёр передал все свои биты, включая бит чётности и стоп-бит, клавиатура посылает последний бит «ноль», который является подтверждением приёма.

PS/2 и USB

В настоящее время подавляющее большинство изготавливаемых компьютерных мышей и клавиатур имеют разъём USB, некоторые современные материнские платы (особенно миниатюрных форм-факторов) не имеют разъёма PS/2 или имеют только один разъём. Современные ноутбуки и нетбуки не имеют внешних разъёмов PS/2, и для подключения к ним мыши или внешней клавиатуры используется USB. Старые ноутбуки чаще всего имели один универсальный разъём.

Если USB-контроллер мышей и клавиатур поддерживает работу через интерфейс PS/2, то устройства (мыши и клавиатуры) можно подключить через пассивный переходник с разъёмом PS/2. Как правило, такой особенностью обладает большинство недорогих мышей и клавиатур.

Интерфейс PS/2 может использоваться не только для клавиатур и мышей, но и для других устройств, например, сканеров штрихкодов, позиционеров. Однако эти устройства в большинстве случаев эмулируют работу клавиатуры или мыши. Это позволяет избавиться от драйверов и сделать устройства платформонезависимыми.

В офисных условиях иногда предпочитают использовать клавиатуры и мыши PS/2, а не USB по соображениям безопасности: это позволяет полностью отключить порты USB и сделать невозможным подключение флешек и других потенциально опасных устройств.

Альтернативы PS/2 для тачпадов

На замену устаревшего протокола PS/2, который не поддерживает более двух синхронных прикосновений (мультитач) и ограничен в разрешении устройств, в ряде встроенных применений (преимущественно с тачпадами) предложены более современные альтернативы. В частности для взаимодействия с устройствами synaptics и libinput применяются протоколы RMI (от англ. Register Mapped Interface). Данные протоколы работают поверх встроенных шин I²C, SMBus или SPI и реализованы в нескольких версиях: RMI3 (с 2007 года)[4] и RMI4 (2010-е)[5][6][7].

Цвета разъёмов

Спецификация PC97 определяет стандартные цвета для разъёмов порта PS/2 в системном блоке и на кабелях подключаемых устройств:

Цвет Устройство
сиреневый клавиатура
зелёный мышь

До внедрения этого стандарта цвета разъёмов не оговаривались, поэтому на практике обычно использовались разъёмы чёрного цвета, а наружный корпус разъёмов на кабелях совпадал с цветом оболочки кабеля (как правило, белый или серый).

Некоторые производители изначально использовали свою систему цветового кодирования: например, клавиатуры Logitech имели корпус разъёма оранжевого цвета, но в дальнейшем перешли на использование стандартных цветов.

См. также

Примечания

  1. «8042» PS/2 Controller / OSdev.org wiki
  2. IBM PC/AT 8042 Keyboard Controller Commands | OS/2 Museum (англ.). www.os2museum.com. Дата обращения: 1 августа 2019.
  3. Scott Mueller. Keyboard Controller Chips // Upgrading and Repairing PCs. — 2003. — С. 387. — 1575 с. — ISBN 9780789729743.
  4. Synaptics RMI3 Specification, 2007—2008 (англ.)
  5. Linux 4.6 Adding Synaptics RMI4 To Better Handle Touchscreens, Touchpads - Phoronix (англ.). phoronix.com (19 марта 2016). Дата обращения: 1 августа 2019.
  6. Synaptics RMI4 Specification PN: 511-000136-01 Rev. E, Synaptics Incorporated 2007—2011, proprietary information (англ.)
  7. Jake Edge. An update on input (LWN.net, X.Org Developers Conference) (англ.). lwn.net (11 октября 2016). Дата обращения: 1 августа 2019.

Ссылки